UNSPECIFIED Abstract Interpretation of Microcontroller Code: Intervals Meet Congruences
نویسندگان
چکیده
Interpretation of Microcontroller Code: Intervals Meet Congruences Jörg Brauer, Andy King, Stefan Kowalewski Embedded Software Laboratory, RWTH Aachen University, Germany Portcullis Computer Security Limited, Pinner, UK Abstract Bitwise instructions, loops and indirect data access present challenges to the verification of microcontroller programs. In particular, since registers are often memory mapped, it is necessary to show that an indirect store operation does not accidently mutate a register. To prove this and related properties, this article advocates using the domain of bit-wise linear congruences in conjunction with intervals to derive accurate range information. The paper argues that these two domains complement one another when reasoning about microcontroller code. The paper also explains how SAT solving, which applied with dichotomic search, can be used to recover branching conditions from binary code which, in turn, further improves interval analysis.Bitwise instructions, loops and indirect data access present challenges to the verification of microcontroller programs. In particular, since registers are often memory mapped, it is necessary to show that an indirect store operation does not accidently mutate a register. To prove this and related properties, this article advocates using the domain of bit-wise linear congruences in conjunction with intervals to derive accurate range information. The paper argues that these two domains complement one another when reasoning about microcontroller code. The paper also explains how SAT solving, which applied with dichotomic search, can be used to recover branching conditions from binary code which, in turn, further improves interval analysis.
منابع مشابه
Abstract interpretation of microcontroller code: Intervals meet congruences
Interpretation of Microcontroller Code: Intervals Meet Congruences Jörg Brauera,∗, Andy Kingb, Stefan Kowalewskia aEmbedded Software Laboratory, RWTH Aachen University, Germany bPortcullis Computer Security Limited, Pinner, UK
متن کاملRange Analysis of Microcontroller Code Using Bit-Level Congruences
Bitwise instructions, loops and indirect data access pose difficult challenges to the verification of microcontroller programs. In particular, it is necessary to show that an indirect write does not mutate registers, which are indirectly addressable. To prove this property, among others, this paper presents a relational binary-code semantics and details how this can be used to compute program i...
متن کاملTest-Case Generation for Embedded Binary Code Using Abstract Interpretation
This paper describes a framework for test-case generation for microcontroller binary programs using abstract interpretation techniques. The key idea of our approach is to derive program invariants a priori, and then use backward analysis to obtain test vectors that are executed on the target microcontroller. Due to the structure of binary code, the abstract interpretation framework is based on ...
متن کاملAutomatic abstraction for bit-vectors using decision procedures
This dissertation is concerned with abstract interpretation of programs whose semantics is defined over finite machine words. Most notably, the considered class of programs contains executable binary code, the analysis of which turns out demanding due to the complexity and the sheer number of involved operations. Challenging for correct yet precise abstract interpretation of binary code are tra...
متن کاملAnalysis of disassembled executable codes by abstract interpretation
The aim of this paper is to dene the abstract domain, abstract operator, abstract semantic, the environments and states of disassembled executable codes as well as a way to analysis the disassembled executable codes. Nowadays, static analysis on disassembled code going to grow. Reverse engineering and malware analysis use this technique. Thus, we tried to perform pluralization the requirements ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012